package com.smm.web.vmc.service;

import com.smm.web.vmc.domain.Tag;

import java.util.List;

/**
 * Created by zhenghao on 2016/9/7.
 *
 */
public interface TagService {


    /**
     * 获取指定仓库下所有标签列表
     * @param whId
     * @return
     */
    List<Tag> getAllByWarehouse(int whId);

    /**
     * 从指定仓库中删除标签
     * @param no
     */
    void delete(String no) throws Exception;

    void add(String no,int whId) throws Exception;


    List<Tag> getAllByCamer(int camerId);

    void update(Tag tag) throws Exception;

    //按仓单获取标签列表
    List<Tag> getAllByReceipt(String repNo);


    Tag getOneById(String tagNo);

    /**
     * 获取指定仓库所有未关联仓单的标签列表
     * @param whId
     * @return
     */
    List<Tag> getAllByWarehouseAndNoRep(int whId);

    /**
     * 获取指定仓库中未关联 或 关联指定仓单的标签列表
     * @param whId
     * @param repNo
     * @return
     */
    List<Tag> getAllByWarehouseAndNotThisRep(int whId, String repNo);

    /**
     * 清空仓单与标签的关系
     * @param repNo
     * @throws Exception
     */
    void deleteAllByReceipt(String repNo) throws Exception;
}
